/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package presenter;

import boundary.ClienteView;
import collection.CollectionCliente;
import collection.CollectionContaCorrente;
import entity.Cliente;
import entity.ContaCorrente;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;

/**
 *
 * @author jakson
 */
public class ClientePresenter {

    private collection.CollectionCliente cliente = new CollectionCliente();
    private collection.CollectionContaCorrente conta = new CollectionContaCorrente();
    private entity.ContaCorrente Conco = new ContaCorrente("", 0, "", 0, "", "","");
    private ClienteView view;
    private float senha;
    public ClientePresenter( final String usuario) {
        
        view = new ClienteView();
        view.getDeposito().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
               
                deposito(usuario);
            }
        });
        
        view.getConsultar().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                consultarRendimento();
            }
        });
        
        view.getSaque().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                saque(usuario);
            }
        });
        
        view.getEmitirextrato().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                emitirExtrato();
            }
        });
        
        view.getItSair().addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent ae) {
                fechar();
            }
        });
        
        view.setTitle("seja bem vindo!");
        view.setLocationRelativeTo(view);
        view.setVisible(true);
    }

   
    private void deposito(String usuario){
          entity.Cliente d = new Cliente("", "", "", "", "", "", "", "");
          d = cliente.buscaUsuario(usuario);
          try{
          if(d.getUsuario().equals(usuario)){
              Conco = conta.buscaUsuario(d.getCpf());
              if( (senha = Float.parseFloat(JOptionPane.showInputDialog(null, "INFORME A QUANTIA", "TELA DEPÓSITO", 0)))==0){
               Conco.deposito(senha);
               conta.editacao(Conco);
              }
               
          }
         
         } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "QUANTIA NÃO INFORMADA");
        }
        
    }
    
    private void consultarRendimento(){
        
    }
    
    private void saque(String usuario){
        
         entity.Cliente d = new Cliente("", "", "", "", "", "", "", "");
          d = cliente.buscaUsuario(usuario);
          try{
          if(d.getUsuario().equals(usuario)){
              Conco = conta.buscaUsuario(d.getCpf());
               senha = Float.parseFloat(JOptionPane.showInputDialog(null, "INFORME A QUANTIA", "TELA SAQUE", 0));
               Conco.saque(senha);
               conta.editacao(Conco);
               
               
          }
         
         } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "CLIENTE NÃO ENCONTARDO");
        }
       
    }
    
    private void emitirExtrato(){
    }
    
    private void fechar(){
        view.dispose();
    }
    
    
}
